package number

// https://leetcode-cn.com/leetbook/read/top-interview-questions-medium/xvmy42/
// 矩阵设置0
// 算法: 使用 m+n 额外空间，将指定行和列 全部设置成0
func setZeroes(matrix [][]int) {
	isZeroX := make([]bool, 200)
	isZeroY := make([]bool, 200)
	lenX := len(matrix)
	lenY := len(matrix[0])
	// 标记
	for x := 0; x < lenX; x++ {
		for y := 0; y < lenY; y++ {
			if matrix[x][y] == 0 {
				isZeroX[x] = true
				isZeroY[y] = true
			}
		}
	}
	for x := 0; x < lenX; x++ {
		for y := 0; y < lenY; y++ {
			if isZeroX[x] || isZeroY[y] {
				matrix[x][y] = 0
			}
		}
	}
}
